机器学习作为一门技术已经被应用到很多场景中,从个性化推荐到智能数据商业分析等,举不胜举,今天我们看一个简单的小例子,智能会话机器人、
所需技术: gunicorn,nginx,mongodb,mysql
ChatterBot 是一个支持多种语言的机器人,通过基于历史会话进行机器学习,从而可以产生自动应答的效果。具体原理图如下:
官方已经有一个 django 的应用例子,不过默认是使用的 sqlite db
改动: 我们使用了 mongodb,然后 django 应用对应的配置了 mysql,使用gunicorn (HTTP server)和 nginx (proxy server),
具体如下:
- 下载 django_app
https://github.com/gunthercox/ChatterBot/tree/master/examples/django_app
- 配置 mysql db
配置 mysql:
1 | sudo apt-get update |
1 | CREATE DATABASE chattraindb CHARACTER SET UTF8; |
1 | sudo apt-get install python-mysqldb |
- 安装 mongdb (略,参考官方文档 4)
- 修改 chatterbot 配置
1 | CHATTERBOT = { |
- 安装 gunicorn,nginx
1 | sudo pip install gunicorn |
然后进行systemd 配置
1 | $ cat /etc/systemd/system/gunicorn.service |
nginx 配置如下:
1 | server { |
为了访问 80 端口,不会默认到 nginx 欢迎页面,需要删除默认配置
1 | sudo rm -rf /etc/nginx/sites-enabled/default |
- nginx 生效,就能访问了, 效果如下: